package com.library.workbench.mapper;

import com.library.workbench.pojo.Book;
import java.util.List;
import java.util.Map;

public interface BookMapper {
    int deleteByPrimaryKey(String bookId);

    int insert(Book row);

    Book selectByPrimaryKey(String bookId);

    List<Book> selectAll();

    int updateByPrimaryKey(Book row);

    /**
     * 根据bookName、author、pubdate模糊查询书籍信息
     * @param map
     * @return
     */
    List<Book> queryBooksByNameOrAuthorOrPublisherForPage(Map<String,Object> map);

    /**
     * 根据bookName、author、pubdate模糊查询总记录条数
     * @param map
     * @return
     */
    int queryRowsCount(Map<String,Object> map);

    /**
     * 保存创建的书籍
     * @param book
     * @return
     */
    int saveCreateBook(Book book);

    /**
     * 根据bookId删除书籍
     * @param bookId
     * @return
     */
    int deleteBookByBookId(String bookId);

    /**
     * 根据bookId查询书籍信息
     * @param bookId
     * @return
     */
    Book selectBookByBookId(String bookId);

    /**
     * 根据bookId更新书籍信息
     * @param book
     * @return
     */
    int updateBookByBookId(Book book);

}